The subject matter of this application relates to a method of delivering media data from a transmitter to a receiver.
Referring to FIG. 1 of the drawings, a media data transmitter 8 includes a video encoder 10 that receives raw video data, typically in the HD-SDI format defined in SMPTE 292M, from a source (not shown) such as a camera. The video encoder utilizes the HD-SDI data to generate a video elementary stream and supplies the video elementary stream to a video packetizer 14, which produces a video packetized elementary stream (PES) composed of variable length packets of up to 64 kbytes. Similarly, an audio encoder (not shown) receives raw audio data from, for example, a microphone and supplies an audio elementary stream to an audio packetizer, which creates an audio PES composed of variable length packets.
In generating the video elementary stream, the video encoder compresses the raw video data utilizing prediction techniques based on correlations between successive pictures represented by the raw video data. Typically, each packet of the video PES contains one or more encoded pictures.
The video and audio packetizers may supply the video and audio PESs to a transport stream multiplexer 18, which assigns respective program identifiers (PIDs) to the video PES and the audio PES and organizes the variable-length packets of the video and audio PESs as fixed-length MPEG-2 transport stream (TS) packets each having a header that includes the PID of the PES and a payload containing PES video (or audio) data.
The video and audio elementary streams conveyed by the video and audio PESs are components of the program conveyed by the SPTS. The program may include other components also, such as second language audio, program guide data and subtitles, conveyed by respective packetized elementary streams having respective PIDs assigned thereto.
The TS packets of the SPTS also include a program map table (PMT), which contains the PIDs of the elementary streams conveyed by the SPTS, and may support other signaling mechanisms for conveying information about the program.
The SPTS that is output by the transport stream multiplexer 18 may be supplied to a program multiplexer 22 that combines that SPTS with other transport streams, conveying other programs, to produce a multi-program transport stream (MPTS). The MPTS is transmitted over a channel to a receiver 24 at which a program demultiplexer 26 separates a selected SPTS from the MPTS and supplies it to a transport stream demultiplexer 30. The receiver 24 may be implemented in a set-top box (STB) connected to a digital TV appliance 25. It will be appreciated by those skilled in the art that the SPTS that is output by the transport stream multiplexer 18 may be transmitted directly to the transport stream demultiplexer 30 without first being combined with other transport streams to create the MPTS but in either case the transport stream demultiplexer receives the fixed-length transport stream packets of the selected SPTS and separates them on the basis of PID, depacketizes the transport stream packets to recreate the PES packets, and directs the video PES to a so-called video transport system target decoder (T-STD) 34 and the audio PES to an audio T-STD 38.
The video T-STD 34 comprises a video depacketizer 40 and a video decoder 42. The video depacketizer 40 receives the video PES from the transport stream demultiplexer and provides an encoded bitstream to the video decoder, which decodes the bitstream and outputs a stream of pictures in display order to the TV appliance 25.
The MPEG-2 transport stream, which is defined in the MPEG-2 systems standard (ISO/IEC 13818-1), is widely used for delivery of encoded video over an error prone channel. The MPEG-2 systems standard also defines the MPEG-2 program stream, which may be used for transmission of encoded video in an error free environment. FIG. 1 illustrates transmission of the video and audio PESs as a program stream to a video program system target decoder (P-STD) 50 and an audio P-STD 52 as an alternative to delivery as a transport stream to the video T-STD 34 and audio T-STD 38. The term “MPEG-2 systems standard stream” is used herein to refer to both the MPEG-2 transport stream and the MPEG-2 program stream. It will be appreciated that regardless of whether the video content is delivered over a program stream or a transport stream, other functional blocks than those described and illustrated above might be required in a practical implementation of the method described.